package com.yanq.liancar.net;

import com.yanq.liancar.bean.BaseBean;
import com.yanq.liancar.bean.CarBean;
import com.yanq.liancar.bean.FindMsgBean;
import com.yanq.liancar.bean.MessageModel;
import com.yanq.liancar.bean.OBDBean;

import retrofit2.http.GET;
import retrofit2.http.POST;
import retrofit2.http.Query;
import rx.Observable;

public interface ApiService {

    @GET("llc/sysMessageController/queryCarServiceMsg")
    Observable<MessageModel> getMessage(
            @Query("token") String token,
            @Query("type") String type,
            @Query("page") int page,
            @Query("num") int num
    );

    @POST("llc/api/selectFindSysMassage")
    Observable<FindMsgBean> getFind(
            @Query("token") String token,
            @Query("type") String type,
            @Query("pageNum") int page,
            @Query("pageSize") int num
    );

    @GET("llc/pushController/addPushTokenForUser")
    Observable<BaseBean> putPushToken(
            @Query("token") String token,
            @Query("pushToken") String pushToken
    );

    @GET("llc/odbbind/findOdbBind")
    Observable<OBDBean> getOBD(
            @Query("token") String token
    );

    @GET("llc/userCar/getUserCar")
    Observable<CarBean> getCar(
            @Query("token") String token
    );

    @GET("llc/odbbind/addOdbForCar")
    Observable<BaseBean> bindObd(
            @Query("token") String token,
            @Query("driNum") String driNum,
            @Query("odbNum") String odbNum
    );

    @GET("llc/odbbind/removeODB")
    Observable<BaseBean> unBindObd(
            @Query("token") String token,
            @Query("id") String id
    );

    @GET("llc/appUpdateController/queryAppVersion")
    Observable<BaseBean> checkVersion();
}